package edu.ccut.saturn.studio.util;

import org.eclipse.swt.graphics.Image;

import edu.ccut.saturn.studio.logic.model.Shape;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnActionNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnBaseComponentNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnComponentNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnCreatComponentNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnDataNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnDecisionNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnEndIterationNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnEndNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnLogicNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnStartIterationNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnTransactionBeginNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnTransactionCommitNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnTransactionRollBackNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnTransformNode;
import edu.ccut.saturn.studio.logic.model.saturn.SaturnViewNode;
import edu.ccut.saturn.studio.Activator;

public class IconFactory {

	public static Image getImage(Shape shape) {
		if (shape instanceof SaturnActionNode) {
//			return CreateIcon.createImage(IconNames.DEBUG_ACTION);
			return CreateIcon.createImage(Activator.DEBUG_ACTION);
		}
		if (shape instanceof SaturnComponentNode
				|| shape instanceof SaturnBaseComponentNode
				|| shape instanceof SaturnCreatComponentNode) {
//			return CreateIcon.createImage(IconNames.SATURN_TTANSFORM_MAX);
			return CreateIcon.createImage(Activator.SATURN_TTANSFORM_MAX);
		}
		if (shape instanceof SaturnDataNode) {
//			return CreateIcon.createImage(IconNames.DEBUG_DATABASE);
			return CreateIcon.createImage(Activator.DEBUG_DATABASE);
		}
		if (shape instanceof SaturnStartIterationNode) {
//			return CreateIcon.createImage(IconNames.DEBUG_ITERATIONBEGIN);
			return CreateIcon.createImage(Activator.DEBUG_ITERATIONBEGIN);
		}
		if (shape instanceof SaturnEndIterationNode) {
//			return CreateIcon.createImage(IconNames.DEBUG_ITERATIONEND);
			return CreateIcon.createImage(Activator.DEBUG_ITERATIONEND);
		}
		if (shape instanceof SaturnDecisionNode) {
//			return CreateIcon.createImage(IconNames.DEBUG_DECESION);
			return CreateIcon.createImage(Activator.DEBUG_DECESION);
		}
		if (shape instanceof SaturnEndNode) {
//			return CreateIcon.createImage(IconNames.DEBUG_END);
			return CreateIcon.createImage(Activator.DEBUG_END);
		}
		if (shape instanceof SaturnLogicNode) {
//			return CreateIcon.createImage(IconNames.DEBUG_LOGIC);
			return CreateIcon.createImage(Activator.DEBUG_LOGIC);
		}

		if (shape instanceof SaturnTransactionBeginNode) {
//			return CreateIcon.createImage(IconNames.DEBUG_TRANSCATION_BEGIN);
			return CreateIcon.createImage(Activator.DEBUG_TRANSCATION_BEGIN);
		}
		if (shape instanceof SaturnTransactionCommitNode) {
//			return CreateIcon.createImage(IconNames.DEBUG_TRANSCATION_COMMIT);
			return CreateIcon.createImage(Activator.DEBUG_TRANSCATION_COMMIT);
		}
		if (shape instanceof SaturnTransactionRollBackNode) {
//			return CreateIcon.createImage(IconNames.DEBUG_TRANSCATION_ROLLBACK);
			return CreateIcon.createImage(Activator.DEBUG_TRANSCATION_ROLLBACK);
		}
		if (shape instanceof SaturnViewNode) {
//			return CreateIcon.createImage(IconNames.DEBUG_VIEW);
			return CreateIcon.createImage(Activator.DEBUG_VIEW);
		}
		if (shape instanceof SaturnTransformNode) {
//			return CreateIcon.createImage(IconNames.SATURN_TTANSFORM_MAX);
			return CreateIcon.createImage(Activator.SATURN_TTANSFORM_MAX);
		}
		return null;
	}

}
